﻿#define _CRT_SECURE_NO_WARNINGS

//#include<iostream>
//using namespace std;
//int getDay(int y, int m, int d)
//{
//
//    static int arr[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
//
//    if (((y % 400 == 0) || (y % 4 == 0 && y % 100 != 0)))
//    {
//        arr[2] = 29;
//    }
//    int sum = 0;
//    for (int i = 1; i < m; i++)
//    {
//        sum += arr[i];
//    }
//    return sum + d;
//
//}
//int main()
//{
//    int n1, n2;
//    int y1, m1, d1;
//    int y2, m2, d2;
//    while ((cin >> n1) && (cin >> n2))
//    {
//        y1 = n1 / 10000;
//        y2 = n2 / 10000;
//        m1 = n1 % 10000 / 100;
//        m2 = n2 % 10000 / 100;
//        d1 = n1 % 100;
//        d2 = n2 % 100;
//        int r = 0;
//        int count = 0;
//        for (int i = y1 + 1; i < y2; i++)
//        {
//            count++;
//            if ((i % 400 == 0) || (i % 4 == 0 && i % 100 != 0))
//                r++;//闰年年数
//        }
//        int s = 0;
//        if (y1 == y2)
//        {
//            s = getDay(y2, m2, d2) - getDay(y1, m1, d1)+1;
//        }
//        if ((y1!=y2)&&(y1 % 400 == 0) || (y1 % 4 == 0 && y1 % 100 != 0))
//        {
//            s = getDay(y2, m2, d2) + 365 * count + r + 366 - getDay(y1, m1, d1)+1;
//
//        }
//        else {
//            s = getDay(y2, m2, d2) + 365 * count + r + 365 - getDay(y1, m1, d1)+1;
//        }
//        cout << s << endl;
//    }
//}
//
//#include<iostream>
//#include<string.h>
//using namespace std;
//int main()
//{
//	string strText = "How are you?";
//
//	string strSeparator = " ";
//
//	string strResult;
//
//	int size_pos = 0;
//
//	int size_prev_pos = 0;
//
//	while ((size_pos = strText.find_first_of(strSeparator, size_pos)) != string::npos)
//
//	{
//
//		strResult = strText.substr(size_prev_pos, size_pos - size_prev_pos);
//
//		cout << strResult << " ";
//
//		size_prev_pos = ++size_pos;
//
//	}
//
//	if (size_prev_pos != strText.size())
//
//	{
//
//		strResult = strText.substr(size_prev_pos, size_pos - size_prev_pos);
//
//		cout << strResult << " ";
//
//	}
//
//	cout << endl;
//
//	return 0;
//}

//int main()
//{
//	string str("Hello Tom.");
//
//	str.reserve(111);
//
//	str.resize(5);
//
//	str.reserve(50);
//
//	cout << str.size() << ":" << str.capacity() << endl;
//
//	return 0;
//}
//int main()
//{
//	string a = "hello world";
//	string b = a;
//	if (a.c_str() == b.c_str())
//
//	{
//
//		cout << "true" << endl;
//
//	}
//
//	else cout << "false" << endl;
//
//	string c = b;
//
//	c = "";
//
//	if (a.c_str() == b.c_str())
//
//	{
//
//		cout << "true" << endl;
//
//	}
//
//	else cout << "false" << endl;
//
//	a = "";
//	if (a.c_str() == b.c_str())
//
//	{
//
//		cout << "true" << endl;
//
//	}
//
//	else cout << "false" << endl;
//	return 0;
//}

//template<typename T>
//T Add(const T& x, const T& y)
//{
//    return x + y;
//}
//
//int main()
//{
//    Add(10, 20);    // 正确
//   // Add(1.2, 30);   // 编译失败， 改正 Add<int>(1.2, 20) 或者 Add((int)1.2, 20)
//    return 0;
//}

#include <iostream>
using namespace std;
int getDay(int y, int m) {
    static int arr[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
    if (m == 2 && ((y % 400 == 0) || (y % 4 == 0 && y % 100 != 0)))
    {
        arr[2] = 29;
    }
    else
    {
        arr[2] = 28;
    }
    return arr[m];
}
int main() {
    int y, d;
    while (cin >> y >> d) {
        if (d > 0 && d < 10) {
            cout << y << "-" << "01" << "-" << "0" << d << endl;
        }
        else if (d >= 10 && d <= 31) {
            cout << y << "-" << "01" << "-" << d << endl;
        }
        else {
            int m = 1;
            while (d > getDay(y, m)) {
                d -= getDay(y, m);
                m++;
            }

            if (m >= 1 && m < 10) {
                if (d > 0 && d < 10) {
                    cout << y << "-" << "0" << m << "-" << "0" << d << endl;
                }
                else if (d >= 10 && d <= 31) {
                    cout << y << "-" << "0" << m << "-" << d << endl;
                }
            }
            else {
                if (d > 0 && d < 10) {
                    cout << y << "-" << m << "-" << "0" << d << endl;
                }
                else if (d >= 10 && d <= 31) {
                    cout << y << "-" << m << "-" << d << endl;
                }
            }
        }
    }
    return 0;
}